Release 10.1A: OpenEdge Development:
Progress Dynamics Basic Development


New and changed attributes

Importing information from the .cst files into the Repository required the creation of new attributes for the template and palette objects. You can also extend widgets when you collect them in a palette, just as you could in a static .cst file. For an example of how this works, look at the standard paletteButtons palette that contains the buCancel, buDone, and buOK buttons. However, this required that some attributes used in the .cst files have their names changed to match attribute names in the Repository.

Attribute name changes

Some of the attribute names used in the .cst files had to be changed to match the Repository. Table 3–13 lists the names of the attributes that have changed.

Table 3–13: Changed attribute names
.cst attribute name
Repository attribute name
3-D
THREE-D
CANCEL-BTN
CANCEL-BUTTON
COLOR
DCOLOR
COLUMN-SEARCHING
ALLOW-COLUMN-SEARCHING
DEFAULT-BTN
DEFAULT
ENABLE
ENABLED
FLAT
FLAT-BUTTON
HEIGHT
HEIGHT-CHARS
HEIGHT-P
HEIGHT-PIXELS
IMAGE-DOWN
IMAGE-DOWN-FILE
IMAGE-INSENSITIVE
IMAGE-INSENSITIVE-FILE
INITIAL-VALUE
INITIALVALUE
LOCK-COLUMNS
NUM-LOCKED-COLUMNS
MIN-HEIGHT
MinHeight
MIN-WIDTH
MinWidth
NAME
NameDefault
NO-AUTO-VALIDATE
AUTO-VALIDATE
NO-LABELS
LABELS
NO-TAB-STOP
TAB-STOP
ROW-HEIGHT
ROW-HEIGHT-CHARS
SCROLLBAR-H
SCROLLBAR-HORIZONTAL
SCROLLBAR-V
SCROLLBAR-VERTICAL
SHOW-POPUP
ShowPopup
WIDTH
WIDTH-CHARS
WIDTH-P
WIDTH-PIXELS

Template attributes

Template objects have several attributes to store template information. These attributes are defined on the Base and DynamicObject classes in order to extend to all possible templates.

Table 3–14 lists the template attributes.

Table 3–14: Template attributes
Attribute
Description
templateFile
The relative path and filename of the static object used as the template at design time (Required).
templateGroup
The possible values are Container, SmartObject, Procedure, and WebObject. It defaults to Container (Required).
templateLabel
The label displayed in the New dialog box and the pop-up menu for the Palette icon. It defaults to the instance name.
templateDescription
The description associated with the object. The description in the New dialog box is based on the templateFile.
templateOrder
Used to determine the order of templates in the New dialog box. All templates are ordered within the group. The AppBuilder automatically orders templates by Container, SmartObject, Procedure, and then WebObject.
templateImageFile
Used in design mode for the image that appears in the design window (dynamic objects only). This can also be defined at the class level.
templatePropertySheet
Used for dynamic containers to associate the static property sheet. This allows for future template objects to use other property sheet mechanisms besides the Container Builder (dynamic objects only).
dynamicObject
Logical value to specify that the template is dynamic (required if true).

Palette attributes

Palette objects have several attributes to store palette-specific information. These attributes are defined on the Base, ProgressWidget, and DynamicWidget classes in order to extend to all possible palette widget and object types.

Table 3–15 lists the palette attributes.

Table 3–15: Palette attributes
Attribute
Description
paletteisDefault
If Yes, the item is displayed on the palette as an icon. Only one item within a group can be the default. (Required for at least one instance.)
paletteType
The type of widget supported in the AppBuilder. If creating a custom widget, the name must be spelled exactly as the widget, such as, Button, Radio-set, or Editor (required).
paletteLabel
Label used in the drop-down menu. If not specified, the Instance name is used.
paletteTooltip
ToolTip used for the palette icon. The default is the paletteLabel.
paletteTriggerEvent
For widgets in static objects, defines the Event associated with the widget (pipe delimited).
paletteTriggerCode
Defines the code for the triggerEvent (pipe delimited).
paletteImageUp
The up image to use in the palette. (Required if paletteisDefault is true.)
paletteImageDown
The down image to use in the palette. (Required if paletteisDefault is true.)
paletteNewTemplate
Used for new SmartObjects to indicate the rendering object file. (Required for SmartObjects if paletteDirectoryList, paletteFilter, and paletteTitle are not specified.)
paletteRenderer
Used to inform AppBuilder of the static file to render when dropping a smart object from the palette onto a container. This attribute is akin to the USE option in the .cst file and is specified on an instance of a 'palette' object.
The framework previously used the value of attribute PalleteNewTemplate, which should only be used when creating a new object from the palette. If this new attribute is not specified, the framework will use the PaletteNewTemplate value as before.
paletteDirectoryList
Used in the Choose Object dialog box to specify a directory. This must be specified if the next two parameters are also specified.
paletteFilter
Used in the Choose Object dialog box to filter files.
paletteTitle
Choose Object dialog box title.
paletteControl
To be defined for the OCX control object only to specify the control codes.
paletteDBConnect
If Yes, specifies the DB must be connected before using this item.
paletteEditOnDrop
Indicates whether to automatically display the property sheet when the object is dropped onto the AppBuilder design window.
paletteOrder
The order of the palette item in the palette. If no order is specified, the icon is added to the end.
If the item is displayed on the palette directly (paletteisDefault is true), this integer value indicates the actual position of the icon in the palette relative to the basic widget types. Value 1 would refer to the position to the right of the OCX icon. You must specify a valid position.


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095